#pragma once
#include<stdio.h>

#define NUM 1024
#define BUFF_NONE 0x1
#define BUFF_LINE 0x2
#define BUFF_ALL 0x4

typedef struct _MY_FILE
{
  int fd;
  char outputbuffer[NUM];
  int current;//用于表示下一个缓冲区写入位置的下标
  int flags;//用于表示刷新策略
}MY_FILE;

MY_FILE* my_fopen(const char* path,const char *mode);//模拟实现fopen
size_t my_fwrite(const void* ptr,size_t size, size_t nmemb,MY_FILE* stream);//模拟实现fwrite
int my_fflush(MY_FILE* fp);//模拟实现fflush，用于刷新缓冲区
int my_fclose(MY_FILE* fp);//模拟实现fclose
